Storage-class memory (SCM) is a type of persistent memory that combines characteristics of a solid-state memory with those of conventional hard-disk magnetic storage. SCM can perform input/output (I/O) at byte granularity. Block device drivers may be used to expose such storage as traditional block devices. However, sector atomicity guarantees may also be desired to provide protection against torn sectors and other issues that may result from power failures when a write operation is in progress. The Block Translation Table (BTT) provides atomic sector update semantics for SCM. The BTT is an indirection table that re-maps the blocks on a given storage device.